package com.software.controller;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import org.springframework.web.servlet.ModelAndView;

import com.software.domain.SessionBean;
import com.software.model.PageListModel;
import com.software.model.PageModel;
import com.software.utils.Constants;

public class BaseController {


	/**
	 * 默认翻页配置
	 * @param vo
	 * @return
	 */
	public PageModel viewPageSet (PageModel vo){
		
		// 默认页面翻页数据加载
		 vo.setPageNow(1);
		 vo.setPageNo(1);
		 vo.setPageSize(8);
		 vo.setOrderKey(Constants.DEF_ORDER_KEY);
		 vo.setOrderKeySort(Constants.DEF_ORDER_KEY_SORT);
		 return vo;
	}
	
	/**
	 * 翻页配置
	 * @param view
	 * @param val
	 */
	public void setPageData(ModelAndView view,PageListModel val){
		view.addObject("total", val.getPage().getTotalNum());
		view.addObject("pageSize",val.getPage().getPageSize());
		view.addObject("pageNo",val.getPage().getPageNow());
		view.addObject("type",val.getPage().getType());
		view.addObject("sortKey",val.getPage().getOrderKey());
		view.addObject("sortOrder",val.getPage().getOrderKeySort());
		
	}
	
	
	/**
	 * 
	 *  Function:
	 *  功能说明： 获取session
	 *	 使用说明：
	 *  @author  wangxiaolei  DateTime 2014年12月18日 下午12:24:48
	 *	返回类型: SessionBean    
	 *  @param request
	 *  @return
	 */
	public SessionBean getSession(HttpServletRequest request){
		HttpSession session = request.getSession();
		SessionBean	 sessionBean = (SessionBean)session.getAttribute(SessionBean.USER_SESSION_KEY_PERFIX+SessionBean.USER_SESSION_SUBKEY_SESSION );
		return sessionBean;
	}
	
	
	/**
	 * 
	 *  Function:
	 *  功能说明： 获取session  获取sessionid  用户ID  
	 *	 使用说明：
	 *  @author  wangxiaolei  DateTime 2014年12月18日 下午12:24:48
	 *	返回类型: SessionBean    
	 *  @param request
	 *  @return
	 */
	public Long getUserIdInSession(HttpServletRequest request){
		HttpSession session = request.getSession();
		SessionBean	 sessionBean = (SessionBean)session.getAttribute(SessionBean.USER_SESSION_KEY_PERFIX+SessionBean.USER_SESSION_SUBKEY_SESSION );
		if(sessionBean.getUser()!=null){
			return sessionBean.getUser().getUserId();
		}
		
		return null;
	}
	
	
}
